// app.js
const { rongIM } = require('./utils/rongIM.js')
import {getUserInfo} from './api/common/index';
import {Event} from './utils/event.js'
// !function(){
// 	  var PageTmp = Page;
// 	  Page =function (pageConfig) {
// 	    // 设置全局默认分享
// 	    pageConfig = Object.assign({
// 	      // onShareAppMessage:function () {
// 	      //   return {
// 	      //     title:'听见广播',
// 	      //     path:'',
// 	      //     imageUrl:'',
// 	      //   };
// 	      // }
// 	    },pageConfig);
// 	    PageTmp(pageConfig);
// 	  };
// 	}();
App({
	onLaunch(options) {
		const updateManager = wx.getUpdateManager()
		updateManager.onCheckForUpdate(function (res) {
				// 请求完新版本信息的回调
				console.log(res.hasUpdate)
		})
		updateManager.onUpdateReady(function () {
				wx.showModal({
						title: '更新提示',
						content: '新版本已经准备好，是否重启应用？',
						success: function (res) {
								if (res.confirm) {
										// 新的版本已经下载好，调用 applyUpdate 应用新版本并重启
										updateManager.applyUpdate()
								}
						}
					})
		})
		getUserInfo()
		//实例化全局事件监听器
    wx.event = new Event()
		wx.im = rongIM.initRong()
		wx.join_room = rongIM.join
		wx.exit_room = rongIM.exitRoom
		wx.breakConnect = rongIM.breakConnect
		wx.connectRong = rongIM.connectRong
		rongIM.watchMessage(wx.event,wx.im)
		// 用户首次进入此时可能还没拿到用户信息，定时检查是否已经获取到用户信息，如获取到关闭定时任务，链接融云
		let check_rcToken = setInterval(() => {
			console.log('用户信息',wx.getStorageSync('userInfo'))
			console.log('检查rc_token',wx.getStorageSync('userInfo').rc_token)
			if(wx.getStorageSync('userInfo') && wx.getStorageSync('userInfo').rc_token){
				rongIM.connectRong(wx.im)
				clearInterval(check_rcToken)
			}
		}, 1000);
		
		// 展示本地存储能力
		const logs = wx.getStorageSync('logs') || []
		logs.unshift(Date.now())
		wx.setStorageSync('logs', logs)
		// 获取系统信息
		const systemInfo = wx.getSystemInfoSync();
		// 胶囊按钮位置信息
		const menuButtonInfo = wx.getMenuButtonBoundingClientRect();
		// 胶囊到状态栏的间距
		this.globalData.menuTopSpace = menuButtonInfo.top - systemInfo.statusBarHeight;
		// 胶囊到右边的间距
		this.globalData.menuRightSpace = systemInfo.screenWidth - menuButtonInfo.right;
		// 胶囊高
		this.globalData.menuHeight = menuButtonInfo.height;
		// 胶囊宽
		this.globalData.menuWidth = menuButtonInfo.width;
		// 导航栏高度 = 状态栏到胶囊的间距（胶囊上边界坐标 - 状态栏高度） * 2 + 胶囊高度 + 状态栏高度
		this.globalData.navBarHeight = this.globalData.menuTopSpace * 2 + menuButtonInfo.height +systemInfo.statusBarHeight;
		// 状态栏高
		this.globalData.statusBarHeight = systemInfo.statusBarHeight;
		// 登录
		wx.login({
			success: res => {
				// 发送 res.code 到后台换取 openId, sessionKey, unionId
			},
		})
		
	},
	onShow() {
		wx.hideHomeButton()
		
	},
	onHide(){
		console.log(getCurrentPages());
			wx.redirectTo({
				url: '../index/index'
			});
	},
	methods:{
		/*
     * 合并数组
     * @param array list 请求返回数据
     * @param array sp 原始数组
     * @return array
     */
    SplitArray: function(list, sp) {
			return util.SplitArray(list, sp)
		}
	},
	globalData: {
		// im:null,
		// RongIMLib, 
		userInfo: null,
		tabBarType: "index", //index:本地  local:当地
		navBarHeight: 0,
		menuTopSpace: 0,
		menuTopSpace: 0,
		menuHeight: 0,
		statusBarHeight: 0
	},
	
})
